package com.aerozhonghuan.logisticsmall.framework.hybrid.bean;

/**
 * 描述 js和原生交互事件标识常量类
 * 作者 Zhang Yonghui
 * 创建日期 2019/1/20
 */
public class JsMobileAgentConstants {
    /**
     * 关闭当前窗口
     */
    public static final String FLAG_CLOSEWINDOW = "close";

    /**
     * 微信分享
     * {title}:标题
     * {content}:内容简述
     * {imagePath}:缩略图URL
     * {url}:网页URL
     * {shareType}:分享方式，如WechatShareType.UNSELECTED等
     * {callBack}:分享结束的回调函数，参数个数：1，类型：整数（0：失败，1：成功）
     */
    public static final String FLAG_WECHATSHARE = "share";

    /**
     * 打开(新H5页面在)新窗口
     * {url}:H5页面链接，远程或本地皆可。 
     * {title}:页面标题，用于显示在Native窗口的标题栏上。
     */
    public static final String FLAG_OPENNEWWINDOW = "openNewWindow";

    /**
     * 跳转到对应的原生页面
     * {pageName}:Native页面名称。
     * {arguments}:Native页面所需参数，Object类型。
     */
    public static final String FLAG_GOPAGE = "goPage";

    /**
     * 友盟埋点事件
     * {eventName}:事件描述
     * {eventId}:事件ID
     */
    public static final String FLAG_UMENGEVENT = "umengEvent";

    /**
     * 中寰统计事件
     * {eventId}:事件ID
     * {eventName}:事件描述
     */
    public static final String FLAG_ZHONGHUANEVENT = "onStatisticsEvent";

    /**
     * 退出登录
     */
    public static final String FLAG_LOGOUT = "logout";

    /**
     * 刷新导航栏右侧功能按钮
     */
    public static final String FLAG_RELOADNAVBAR_RIGHTBUTTONS = "reloadNavBarRightButtons";

    /**
     * 截图当前页面并保存进相册，支持截取页面部分区域
     * {left}:左边距,数值为百分比
     * {top}:上边距,数值为百分比
     * {width}:宽度,数值为百分比
     * {height}:高度,数值为百分比
     */
    public static final String FLAG_SCREENSHOT = "screenshot2PhotoAlbum";

    /**
     * 获取H5某个区域坐标,并执行回调
     * {left}:左边距,数值为百分比
     * {top}:上边距,数值为百分比
     * {width}:宽度,数值为百分比
     * {height}:高度,数值为百分比
     */
    public static final String FLAG_VIEWLOCATION = "viewlocation";

    /**
     * 日期选择控件
     * {format} :日期格式，yyyy-MM-dd，yyyy-MM
     * {startDate}:开始日期
     * {callBack}:回调函数
     */
    public static final String FLAG_SHOWTIMEPICKER = "showTimePicker";

    /**
     * 选择图片并上传
     * {imageSelectType}
     * UNSELECTED : 0,//未指定，此时会先让用户选择方式
     * CAMERA : 1,//相机
     * PHOTOALBUM : 2//相册
     */
    public static final String FLAG_IMAGE = "image";
    
    /**
     * 隐藏导航栏
     */
    public static final String FLAG_HIDE_NAVBAR = "hideNavigationBar";
    
    /**
     * 显示导航栏
     */
    public static final String FLAG_SHOW_NAVBAR = "showNavigationBar";
    
    /**
     * 返回到历史页面
     * {historyURL}:历史页面URL
     */
    public static final String FLAG_JUMPTOHISTORY = "jumpToHistory";
    
    /**
     * 获取用户信息
     * {callBack} :JS回调函数.{userID:"xxxxx",phone:"xxxxx",userName:"xxxxx",token:"xxxxxxxxx"}
     */
    public static final String FLAG_GETUSERINFO = "getUserInfo";
    
    /**
     * 获取定位点
     * {callBack}:JS回调函数.{longitude:"经度",latitude:"纬度",address:"地址名称"}
     */
    public static final String FLAG_LOCATION = "location";
    
    /**
     * 获取业务接口基地址
     * {callBack}:JS回调函数.{urlHost:"基地址"}
     */
    public static final String FLAG_GETHOST = "getHost";
    
    /**
     * 图片展示器，支持左右滑动展示和缩放
     * {imageArray}:图片URL数组
     * {selectedIndex}:初始展示的图片索引
     */
    public static final String FLAG_IMGSWIPER = "imgSwiper";
    
    /**
     * 显示loading动画
     */
    public static final String FLAG_SHOWPROGRESS = "showProgress";
    
    /**
     * 隐藏loading动画
     */
    public static final String FLAG_HIDEPROGRESS = "hideProgress";
    
    /**
     * 触发JS事件，与hybrid对象搭配使用解决两个H5页面之间的传值问题。不建议显示调用此方法，而通过hybrid相关方法触发。
     * {event}:JS事件名
     * {data}:事件附带数据
     */
    public static final String FLAG_EVENTNOTIFICATION = "eventNotification";
}
